Previous: System Config, Up: Configuration

##### 6.3.2.3 Files Created by `configure`

Here we spell out what files will be set up by configure in the gcc directory. Some other files are created as temporary files in the configuration process, and are not used in the subsequent build; these are not documented.

- Makefile is constructed from Makefile.in, together with the host and target fragments (see Makefile Fragments) t-target and x-host from config, if any, and language Makefile fragments language/Make-lang.in.
- auto-host.h contains information about the host machine determined by configure. If the host machine is different from the build machine, then auto-build.h is also created, containing such information about the build machine.
- config.status is a script that may be run to recreate the current configuration.
- configargs.h is a header containing details of the arguments passed to configure to configure GCC, and of the thread model used.
- cstamp-h is used as a timestamp.
- fixinc/Makefile is constructed from fixinc/Makefile.in.
- gccbug, a script for reporting bugs in GCC, is constructed from gccbug.in.
- intl/Makefile is constructed from intl/Makefile.in.
- If a language config-lang.in file (see The Front End config-lang.in File) sets `outputs`, then the files listed in `outputs` there are also generated.

The following configuration headers are created from the Makefile, using mkconfig.sh, rather than directly by configure. config.h, bconfig.h and tconfig.h all contain the xm-machine.h header, if any, appropriate to the host, build and target machines respectively, the configuration headers for the target, and some definitions; for the host and build machines, these include the autoconfigured headers generated by configure. The other configuration headers are determined by config.gcc. They also contain the typedefs for `rtx`, `rtvec` and `tree`.

- config.h, for use in programs that run on the host machine.
- bconfig.h, for use in programs that run on the build machine.
- tconfig.h, for use in programs and libraries for the target machine.
- tm_p.h, which includes the header machine-protos.h that contains prototypes for functions in the target .c file. FIXME: why is such a separate header necessary?